package cn.appsys.dao.appinfo;
import java.util.List;
import org.apache.ibatis.annotations.Param;

import cn.appsys.pojo.AppInfo;



public interface DevAppMapper {
	/**
	 * 通过userCode获取User
	 * @param userCode
	 * @return
	 * @throws Exception
	 */
	public AppInfo getAppInfo(@Param("id")Integer id)throws Exception;
	
	/**
	 * 增加用户信息
	 * @param devUser
	 * @return
	 * @throws Exception
	 */
	public int add(AppInfo addInfo)throws Exception;
	
	/**
	 * 通过条件查询-userList
	 * @param userName
	 * @param userRole
	 * @param currentPageNo
	 * @param pageSize
	 * @return
	 * @throws Exception
	 */
	public List<AppInfo> getAppInfoList(@Param(value="softwareName")String querySoftwareName,
            @Param(value="status")Integer queryStatus,
            @Param(value="flatformId")Integer queryFlatformId,
            @Param(value="categoryLevel1")Integer queryCategoryLevel1,
            @Param(value="categoryLevel2")Integer queryCategoryLevel2,
            @Param(value="categoryLevel3")Integer queryCategoryLevel3,
            @Param(value="devId")Integer devId,
            @Param("from")Integer currentPageNo, 
            @Param("pageSize")Integer pageSize)throws Exception;
	

	/**
	 * 通过条件查询-用户表记录数
	 * @param userName
	 * @param userRole
	 * @return
	 * @throws Exception
	 */
	public int getAppInfoCount(@Param(value="softwareName")String querySoftwareName,
            @Param(value="status")Integer queryStatus,
            @Param(value="flatformId")Integer queryFlatformId,
            @Param(value="categoryLevel1")Integer queryCategoryLevel1,
            @Param(value="categoryLevel2")Integer queryCategoryLevel2,
            @Param(value="categoryLevel3")Integer queryCategoryLevel3,
            @Param(value="devId")Integer querydevId)throws Exception;
	
	/**
	 * 通过userId删除user
	 * @param delId
	 * @return
	 * @throws Exception
	 */
	public int deleteAppInfoById(@Param("id")Integer delId)throws Exception; 
	
	
	/**
	 * 通过userId获取user
	 * @param id
	 * @return
	 * @throws Exception
	 */
	public AppInfo getAppInfoById(@Param("id")Integer id)throws Exception; 
	
	/**
	 * 修改用户信息
	 * @param devUser
	 * @return
	 * @throws Exception
	 */
	public int modify(AppInfo appInfo)throws Exception;

	
	
}
